%%
Int "INT"
Bool "BOOL"
:: "::"
\=\= "=="
\= "="
- "-"
\+ "+"
, ","
\* "*"
/ "/"
\>\= ">="
\< "<"
lambda "LAMBDA"
\{ "{"
\} "}"
\( "("
\) ")"
\; ";"
true "TRUE"
false "FALSE"
or "OR"
and "AND"
not "NOT"
xor "XOR"
if "IF"
then "THEN"
else "ELSE"
while "WHILE"
do "DO"
return "RETURN"
[A-Za-z][A-Za-z0-9]* "IDENT"
[0-9]+ "DIGIT"
[\t\n ]+ ;